Skip to content

Latest commit

 

History

History
35 lines (32 loc) · 977 Bytes

3002-判断是否是回文数据.md

File metadata and controls

35 lines (32 loc) · 977 Bytes

思路:如果数据x是负数,那么就不会是回文数据,如果数据小于10,就肯定是回文,然后将数据反转,判断是否相等。
方法一:通过for循环反转,效率高

public boolean isPalindrome(int x) {
    if(x<0)return false;
    if(x<10)return true;
    String xStr = String.valueOf(x).toString();
    String reverseX = "";
    int maxIndex = xStr.length()-1;
    for (int i=maxIndex;i>=0;i--){
        reverseX+=xStr.charAt(i);
    }
    if(xStr.equals(reverseX)){
        return true;
    }
    return false;
}

方法二:利用StringBuffer提供的方法反转,效率相对低一些

public boolean isPalindrome(int x) {
    if(x<0)return false;
    if(x<10)return true;
    String xStr = String.valueOf(x).toString();
    StringBuffer stringBuffer = new StringBuffer(xStr);
    String reverse = stringBuffer.reverse().toString();
    if(xStr.equals(reverse)){
        return true;
    }
    return false;
}